#pragma once

#include "iostream"
#include "vector"
#include "algorithm"
#include "TypeDefin.h"

using namespace std;

/*HJJ QQ479287006
 *输入: root = [3,9,20,null,null,15,7]
输出: 24
解释: 在这个二叉树中，有两个左叶子，分别是 9 和 15，所以返回 24
示例 2:

输入: root = [1]
输出: 0

来源：力扣（LeetCode）
链接：https://leetcode.cn/problems/sum-of-left-leaves
著作权归领扣网络所有。商业转载请联系官方授权，非商业转载请注明出处。
 * */

//哈哈哈还是被写出来了感觉有点感觉了
int sumOfLeftLeaves(TreeNode *root) {

    if (root == nullptr)
        return 0;


    if (root->left && !root->left->left && !root->left->right)
        return root->left->val  + sumOfLeftLeaves(root->right);//+ sumOfLeftLeaves(root->left) 这个不用加的

    return sumOfLeftLeaves(root->left) + sumOfLeftLeaves(root->right);

}